package com.piece.admin.api.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.ArrayList;
import java.util.List;

@Data
@NoArgsConstructor
@ApiModel(value = "部门信息")
public class SysDeptDTO {

    @ApiModelProperty(value = "主键")
    private Long deptId;

    @ApiModelProperty(value = "父部门id")
    private Long parentId;

    @ApiModelProperty(value = "父部门名称")
    private String parentName;

    @ApiModelProperty(value = "祖级列表")
    private String ancestors;

    @ApiModelProperty(value = "部门名称")
    private String deptName;

    @ApiModelProperty(value = "显示顺序")
    private String orderNum;

    @ApiModelProperty(value = "类别", notes = "0机构 1部门")
    private String type;

    @ApiModelProperty(value = "负责人")
    private String leader;

    @ApiModelProperty(value = "负责人名称")
    private String leaderName;

    @ApiModelProperty(value = "联系电话")
    private String phone;

    @ApiModelProperty(value = "邮箱")
    private String email;

    @ApiModelProperty(value = "状态", notes = "0=正常,1=删除,2=停用")
    private String status;

    @ApiModelProperty(value = "状态名称")
    private String statusName;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "是否有下级部门")
    private boolean hasChildren;

    @ApiModelProperty(value = "下级部门列表")
    private List<SysDeptDTO> children = new ArrayList<>();
}
